// *******************************************************************************************************
// # リスト検索画面
//   ・フッター検索ボタン
//   ・選択ボタン
// *******************************************************************************************************

(function(win, doc) {

	/* フッター検索ボタン
	----------------------------------- */
	function checkSelectBtn() {
		var $searchBtn = $('#fixedSearchBtn'),
			$modalBtnParent = $('.mod_btn_append'),
			$modalBtn = $('.mod_btn_append a'),
			$copyright = $('#siteCopyright'),
			$searchInput = $('.box_expand_search_list input'),
			isCheck = false;

		$searchInput.each(function(i){
			if ($(this).prop('checked')) {
				isCheck = true;
				return false;
			};
		});

		//show
		$searchBtn.show();
		$copyright.css('margin-bottom', 70);
		$modalBtn.addClass('mod_btn_all_pink');
		$modalBtnParent.removeClass('mod_btn_append_off');
	}

	/* 選択ボタン
	----------------------------------- */
	function setSelectBtn() {
		var $searchBox = $('.box_expand_search_list .box_expand_inner');

		$searchBox.each(function(i){
			var $title = $(this).find('.ttl_expand input'),
				$list  = $(this).find('.list_expand input');
			$title.on('click', function(e){
				if ($(this).prop('checked')) {
					$list.prop('checked', true);
				} else {
					$list.prop('checked', false);
				};
				checkSelectBtn();
			});
			$list.on('click', function(e){
				$title.prop('checked', false);
				checkSelectBtn();
			});
		});
		
		//選択された町名をチェック
		var chous = [];
		$('input[type=hidden][name^=this_params]').each(function(){
			if($(this).attr('name').indexOf('targetchou') > 0){
				chous.push($(this).val());
			}			
		});

		$('.list_expand li').each(function(e){	
			var ids = $(this).find('input').val().split('-');			
			var id = ids[ids.length - 1];			
			if($.inArray(id, chous) != -1){
				$(this).find('input').prop('checked', true);
				checkSelectBtn();
			}
		});	
		//選択された町名をチェック
		
		/*
		 * 検索条件連携準備
		 */
		function prepareParams(){		
			var items=[];
			var form = document.forms[0];
			for (var i=0; i<form.length; i++){
				if (form[i].name.match(/^this_params\[(.+)\]\[(.+)\]$/, "$1[$2]")) {
					var name = form[i].name.replace(/^this_params\[(.+)\]\[(.+)\]$/, "$1[$2]");
					if(name.indexOf('page') < 0 && name.indexOf('targetchou_') < 0){
						items.push({name:name,value:form[i].value});
					}					
				} 
				else if (form[i].name.match(/^this_params\[(.+)\]$/, "$1")) {
					var name = form[i].name.replace(/^this_params\[(.+)\]$/, "$1");
					if(name.indexOf('page') < 0 && name.indexOf('targetchou_') < 0){
						items.push({name:name,value:form[i].value});
					}
				}			
			}
			return items;
		}
		
		
		function submit(action, method, values) {
	 	   var form = $('<form/>', {
		        action: action,
		        method: method
		    });
		    $.each(values, function() {
		        form.append($('<input/>', {
		            type: 'hidden',
		            name: this.name,
		            value: this.value
		        }));    
		    });
		    form.appendTo('body').submit();
		}
		
		$(".mod_btn_all").click(function() {
			
			var items=prepareParams();

			//町名			
			$('input[type=checkbox]:checked').each(function(index){
				var val = $(this).val().split('-');
				items.push({name:'targetchou_' + index, value:val[val.length-1]});
			});
			//希望条件ページ戻る
			items.push({name:'page',value:'config'||1});
			//console.dir(items);
			submit('/sp/rstobi/rstobi','POST',items);
			
		});
		
		$('a[name=lnkSelf]').on('click', function(){
			var items=prepareParams();
			items.push({name:'targetchou_0', value:$(this).attr('id')});
			items.push({name:'page',value:'config'||1});
			submit('/sp/rstobi/rstobi','POST',items);
		});
	}

	//Defaultチェック
	
	
	/* 実行
	----------------------------------- */
	$(function() {
		setSelectBtn();
		checkSelectBtn();
	});

})(this, document);
